package org.dromara.germbank.domain.bo;

import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.*;
import lombok.Data;
import org.dromara.germbank.domain.BusApplicationContact;

/**
 * 联系我们信息收集业务对象
 *
 * @author congxing
 */
@Data
@AutoMapper(target = BusApplicationContact.class, reverseConvertGenerate = false)
public class BusApplicationContactBo {

    /**
     * 名
     */
    @NotBlank(message = "名不能为空")
    @Size(max = 50, message = "名长度不能超过{max}")
    private String firstName;

    /**
     * 姓
     */
    @NotBlank(message = "姓不能为空")
    @Size(max = 50, message = "姓长度不能超过{max}")
    private String lastName;

    /**
     * 主邮箱
     */
    @NotBlank(message = "主邮箱不能为空")
    @Size(max = 255, message = "主邮箱长度不能超过{max}")
    private String email;

    /**
     * 电话
     */
    @NotBlank(message = "电话不能为空")
    @Size(max = 30, message = "电话长度不能超过{max}")
    private String phone;

    /**
     * 兴趣角色
     */
    @NotNull(message = "兴趣角色不能为空")
    private Object interestCode;

    /**
     * 合作IVF中心
     */
    @Size(max = 200, message = "合作IVF中心长度不能超过{max}")
    private String ivfCenter;

    /**
     * 需要提供的帮助
     */
    @NotBlank(message = "需要提供的帮助不能为空")
    @Size(max = 65535, message = "需要提供的帮助长度超限")
    private String helpNote;

    /**
     * 发送宣传手册 0/1
     */
    private Integer needBrochure;

    /**
     * 收件人邮箱
     */
    @Size(max = 255, message = "收件人邮箱长度不能超过{max}")
    private String recipientEmail;

    /**
     * 同意风险提示 0/1
     */
    @NotNull(message = "同意风险提示 0/1 不能为空")
    private Integer consentRisk;

    /**
     * 了解法规 0/1
     */
    @NotNull(message = "了解法规 0/1 不能为空")
    private Integer consentLaw;

    /**
     * 承诺信息真实 0/1
     */
    @NotNull(message = "承诺信息真实 0/1 不能为空")
    private Integer consentTruth;

}
